উদাহরণ সহ json_validate() এর ব্যবহার

Computer Programming - পিএইচপি (PHP 8) - json_validate() ফাংশন (PHP 8.3+)
183

json_validate() এর ব্যবহার

PHP তে JSON ডেটার বৈধতা যাচাই করতে json_validate() ফাংশনটি খুবই কার্যকরী হতে পারে, কিন্তু PHP-তে এই ফাংশনটি সরাসরি অন্তর্ভুক্ত নেই। তবে, আপনি json_decode() ফাংশন এবং json_last_error() ফাংশনের সাহায্যে JSON ডেটার বৈধতা যাচাই করতে পারেন। json_validate() এর মতো কাস্টম ফাংশন তৈরি করতে এই দুটি ফাংশন ব্যবহার করা হয়।

PHP তে JSON validation সাধারণত json_decode() এর মাধ্যমে করা হয়, যা JSON স্ট্রিংটিকে একটি PHP অ্যারে বা অবজেক্টে রূপান্তর করে এবং এর পর json_last_error() দ্বারা ত্রুটি (error) চেক করা হয়।

json_validate() এর কাস্টম ফাংশন উদাহরণ

আপনি একটি কাস্টম json_validate() ফাংশন তৈরি করতে পারেন, যা JSON স্ট্রিংটি বৈধ কিনা তা যাচাই করে।

json_validate() ফাংশন উদাহরণ:

function json_validate($json_string) {
    json_decode($json_string);  // Try to decode the JSON
    return (json_last_error() == JSON_ERROR_NONE);  // Return true if no error
}

$json = '{"name": "John", "age": 30}';
if (json_validate($json)) {
    echo "Valid JSON!";
} else {
    echo "Invalid JSON!";
}

$invalid_json = '{"name": "John", "age": 30';  // Missing closing bracket
if (json_validate($invalid_json)) {
    echo "Valid JSON!";
} else {
    echo "Invalid JSON!";
}

ব্যাখ্যা:

  1. json_decode(): এটি JSON স্ট্রিংটি PHP অ্যারে বা অবজেক্টে রূপান্তর করে।
  2. json_last_error(): এটি শেষ JSON ডিকোডিং অপারেশনটির ত্রুটি কোড প্রদান করে। যদি কোনো ত্রুটি না থাকে, তবে এটি JSON_ERROR_NONE ফেরত দেয়, যা নির্দেশ করে যে JSON স্ট্রিংটি বৈধ।
  3. json_validate(): এটি একটি কাস্টম ফাংশন যা JSON স্ট্রিংটি ডিকোড করার চেষ্টা করে এবং বৈধতা যাচাই করে।

আউটপুট:

Valid JSON!
Invalid JSON!

এখানে, প্রথম JSON স্ট্রিংটি সঠিকভাবে ফরম্যাট করা হয়েছে এবং এটি বৈধ, কিন্তু দ্বিতীয় স্ট্রিংটি একটি ত্রুটি আছে (উল্লেখযোগ্য বন্ধনী নেই), তাই এটি অবৈধ হিসেবে চিহ্নিত হয়।


কিছু অতিরিক্ত চেক:

PHP তে JSON validation আরও উন্নত করার জন্য আপনি নিম্নলিখিত ফিচার ব্যবহার করতে পারেন:

1. JSON_OBJECT_AS_ARRAY ব্যবহার করা:

যদি আপনি JSON স্ট্রিংটি অ্যারে আকারে চান, তবে json_decode() ফাংশনে true আর্গুমেন্ট পাস করতে হবে।

$json = '{"name": "John", "age": 30}';
$data = json_decode($json, true);  // Convert to associative array
if (json_last_error() == JSON_ERROR_NONE) {
    echo "Valid JSON and converted to array!";
} else {
    echo "Invalid JSON!";
}

2. JSON_THROW_ON_ERROR ব্যবহার করা:

PHP 7.3 এবং পরবর্তী সংস্করণে, আপনি json_decode() ফাংশনে JSON_THROW_ON_ERROR অপশন ব্যবহার করে একটি exception থ্রো করতে পারেন যদি JSON ডিকোডিংয়ে সমস্যা হয়।

function json_validate_with_exception($json_string) {
    try {
        json_decode($json_string, false, 512, JSON_THROW_ON_ERROR);  // Will throw an exception if invalid
        return true;
    } catch (JsonException $e) {
        return false;
    }
}

$json = '{"name": "John", "age": 30}';
if (json_validate_with_exception($json)) {
    echo "Valid JSON!";
} else {
    echo "Invalid JSON!";
}

এখানে, JSON_THROW_ON_ERROR দ্বারা যদি JSON স্ট্রিংটি অবৈধ হয় তবে একটি JsonException থ্রো হবে, যা ক্যাচ করা হবে এবং false ফেরত দেওয়া হবে।

উপসংহার

যদিও PHP তে সরাসরি json_validate() ফাংশন নেই, তবে json_decode() এবং json_last_error() ফাংশন ব্যবহার করে আপনি সহজেই JSON স্ট্রিংটি যাচাই করতে পারেন। এছাড়াও, PHP 7.3 বা তার পরবর্তী সংস্করণে JSON_THROW_ON_ERROR এবং JsonException ব্যবহার করে আপনি ত্রুটির ক্ষেত্রে আরও শক্তিশালী হাতিয়ার পেতে পারেন। JSON ডেটা ভ্যালিডেশন নিশ্চিত করতে এগুলো ব্যবহার করলে আপনার কোডের নিরাপত্তা এবং নির্ভরযোগ্যতা বৃদ্ধি পাবে।

Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...